/**
 * 
 * 팀 관리, 팀원 관리 js
 * @author gudals
 *
 */

$(function() {
    Mng.init();
});

var Mng = {
    init: function()
    {
        this.initDialog();
    },
    
    initDialog: function()
    {
        $('#dialog_reg_member').dialog({
            autoOpen: false,
            width: 450,
            modal: true,
            buttons: false
        });
    },
    
    /**
     * 팀 등록
     */
    regTeam: function()
    {
        if (!$('#team_name').val()) {
            Base.messageIn('[팀명]이 입력되지 않았습니다.', 'error');
            $('#team_name').focus();
            return false;
        }
        
        if ($('#modeTeam').val() == 'modify') {
            if (!confirm('수정 하시겠습니까?')) return false;
        }
        
        Base.showSpin();
        
        var params = 'c=mng&m=regTeamAct&'+$('#regTeamForm').serialize();
        
        $.ajax({
            type: 'POST',
            url: '/cont/',
            dataType: 'json',
            data: params,
            success:function(data) {
                
                Base.hideSpin();
                
                if (data.code == 200) {
                    alert('정상적으로 처리되었습니다.');
                    window.location.reload();
                    
                } else {
                    alert('오류가 있습니다. 담당자에게 문의 하시기 바랍니다. [ code : '+data.code+']');
                    //Base.messageIn('정상적으로 처리되지 않았습니다. [ code : '+data.code+']', 'error');
                }
            }
        });
    },
    
    /**
     * 팀 수정
     */
    modTeam: function(iTeamNo, sTeamName)
    {
        $('#modeTeam').attr('value', 'modify');
        $('#team_no').attr('value', iTeamNo);
        $('#team_name').attr('value', sTeamName).focus();
    },
    
    /**
     * 팀 삭제
     */
    delTeam: function(iTeamNo)
    {
        if (!confirm('삭제 하시겠습니까?')) return false;
        
        Base.showSpin();
        
        var params = 'c=mng&m=delTeamAct&team_no='+iTeamNo;
        
        $.ajax({
            type: 'POST',
            url: '/cont/',
            dataType: 'json',
            data: params,
            success:function(data) {
                
                Base.hideSpin();
                
                if (data.code == 200) {
                    alert('정상적으로 처리되었습니다.');
                    window.location.reload();
                    
                } else {
                    alert('오류가 있습니다. 담당자에게 문의 하시기 바랍니다. [ code : '+data.code+']');
                    //Base.messageIn('정상적으로 처리되지 않았습니다. [ code : '+data.code+']', 'error');
                }
            }
        });
    },
    
    viewRegMember: function()
    {
        $('#dialog_reg_member').dialog('open');
    },
    
    /**
     * 팀원 등록
     */
    regTeamMember: function()
    {
        var aValid = [
              [':팀', 'empty', 'm_team_no']
              , ['이름', 'ko_eng_all_num', 'member_name', 2, 20]
              , ['아이디', 'eng_all_num', 'member_id', 4, 20]
              , ['이메일', 'email', 'member_email', 0, 80]
              , [':레벨', 'empty', 'member_level']
          ];
        
        if ($('#modeMember').val() != 'modify') {
            if (!confirm('수정 하시겠습니까?')) return false;
            
            aValid.push();
        }
        
        var _check = FormValidation.checked(aValid);
        if (!_check) {
            return false;
        }
        
        if ($('#member_pass').val() != $('#check_member_pass').val()) {
            alert('비밀번호를 정확히 입력해 주세요.');
            return false;
        }
        
        Base.showSpin();
        
        var params = 'c=mng&m=regTeamMemberAct&'+$('#regMemberForm').serialize();
        
        $.ajax({
            type: 'POST',
            url: '/cont/',
            dataType: 'json',
            data: params,
            success:function(data) {
                
                Base.hideSpin();
                
                if (data.code == 200) {
                    alert('정상적으로 처리되었습니다.');
                    window.location.reload();
                    
                } else if (data.code == 301) {
                    alert('이미 사용중인 아이디 입니다.');
                    //Base.messageIn('이미 사용중인 아이디 입니다.', 'error');
                    $('#member_id').focus();
                    return false;
                    
                } else {
                    alert('오류가 있습니다. 담당자에게 문의 하시기 바랍니다. [ code : '+data.code+']');
                    //Base.messageIn('정상적으로 처리되지 않았습니다. [ code : '+data.code+']', 'error');
                }

                $('#dialog_reg_member').dialog('close');
            }
        });
    },
    
    /**
     * 회원정보 수정
     */
    modMember: function(el)
    {
        var _data = $(el).attr('data').split('|');
        $('#member_no').attr('value', _data[0]);
        $('#m_team_no').attr('value', _data[1]);
        $('#member_name').attr('value', _data[2]);
        $('#member_id').attr('value', _data[3]);
        $('#member_email').attr('value', _data[4]);
        $('#member_level').attr('value', _data[5]);
        
        $('#modeMember').attr('value', 'modify');
        
        this.viewRegMember();
    }
};